package com.party.business.domain;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.party.common.annotation.Excel;
import com.party.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.Max;
import javax.validation.constraints.Size;

/**
 * 课程信息对象 kc
 *
 * @author ruoyi
 * @date 2025-01-03
 */
@Data
@TableName(value = "kc")
@EqualsAndHashCode(callSuper = true)
public class Kc extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /**
     * "课程名称"
     */
    @Excel(name = "课程名称")
    @Size(min = 0, max = 100, message = "课程名称长度不能超过{max}个字符")
    private String title;

    /**
     * "课程分类"
     */
    @Excel(name = "课程分类")
    private String kcType;

    /**
     * "专区类型"
     */
    @Excel(name = "专区类型")
    private String zqType;

    /**
     * "封面"
     */
    @Excel(name = "封面")
    private String image;


    /**
     * "banner图片"
     */
    @Excel(name = "banner图片")
    private String bimg;


    /**
     * "详情图片"
     */
    @Excel(name = "详情图片")
    private String img;

    /**
     * "课时"
     */
    @Max(value = 100000, message = "课时不能超过100000")
    private Long ks;


    /**
     * "原价"
     */
    @Excel(name = "原价")
    @DecimalMax(value = "100000000", inclusive = true, message = "原价不能超过100000000")
    private BigDecimal oldPrice;

    /**
     * "现价"
     */
    @Excel(name = "现价")
    @DecimalMax(value = "100000000", inclusive = true, message = "现价不能超过100000000")
    private BigDecimal nowPrice;

    /**
     * "视频"
     */
    @Excel(name = "视频")
    private String video;

    /**
     * "状态 是否上架"
     */
    @Excel(name = "状态 是否上架")
    private String status;

    /**
     * "是否为体验课"
     */
    @Excel(name = "是否为体验课")
    private String isTy;

    /**
     * "课程详情"
     */
    @Excel(name = "课程详情")
    private String content;

    /**
     * "是否热门"
     */
    private String isRm;


    private String delFlag;
    /**
     * 所属学段：0小学，1初中，2高中
     */
    private String teachSection;
    /**
     * 课程等级：0一级，1二级
     */
    private String classLevel;

    /**
     * "专区类别名称"
     */
    @TableField(exist = false)
    private String zqTypeName;

    /**
     * "流程类别名称"
     */
    @TableField(exist = false)
    private String kcTypeName;

    /**
     * "用户Id"
     */
    @TableField(exist = false)
    private String userId;

    /**
     * "是否收藏 大于0 为收藏了"
     */
    @TableField(exist = false)
    private Integer isSc;


}
